package cn.fl.communication.transorm;

import cmm.communication.facade.communication.dto.NopCallBillInfoDTO;
import cn.fl.communication.vo.NopCallBillInfoVO;


/**
 * @Description: 号码保护(话单回调通知)记录 转换器
 * @Description: VO是客户端传递数据到服务端进行转换的数据 
 * @Description: VO转换数据变成DTO传递到服务端 
 * @Description: VO不能在服务端出现
 */
public class BaseNopCallBillInfoVOTransform {


	/**
	 * DTO 转  VO
	 * @param po NopCallBillInfoDTO
	 * @return NopCallBillInfoVO
	 */
	public static NopCallBillInfoVO baseToVO(NopCallBillInfoDTO dto) {
		NopCallBillInfoVO  vo = null;
		if (dto != null) { 
			vo = new NopCallBillInfoVO();
			vo.setId(dto.getId());
			vo.setUuidCd(dto.getUuidCd());//唯一标识(UUID Hash值)
			vo.setCallId(dto.getCallId());//通话唯一标识
			vo.setAppId(dto.getAppId());//三方应用标识(appId)
			vo.setCallerNo(dto.getCallerNo());//主叫号码
			vo.setCalleeNo(dto.getCalleeNo());//被叫号码
			vo.setYNo(dto.getYNo());//中间号码Y
			vo.setXNo(dto.getXNo());
			vo.setStartTm(dto.getStartTm());//通话开始时间
			vo.setEndTm(dto.getEndTm());//通话结束时间
			vo.setCalleeRingTm(dto.getCalleeRingTm());//被叫振铃时间
			vo.setCalleeAnwserTm(dto.getCalleeAnwserTm());//被叫接听时间
			vo.setRecordRelPath(dto.getRecordRelPath());//录音地址相对路径
			vo.setRecordAbsPath(dto.getRecordAbsPath());//录音地址绝对路径
			vo.setRecordUrl(dto.getRecordUrl());//录音地址
			vo.setCallResult(dto.getCallResult());//本次通话结果
			vo.setCallDuration(dto.getCallDuration());//本次通话时长(秒)
			vo.setUserData(dto.getUserData());//用户自定义数据
			vo.setMappingId(dto.getMappingId());//绑定ID
			vo.setCalleeDisplay(dto.getCalleeDisplay());//被叫来显号码
			vo.setCallTyp(dto.getCallTyp());//呼叫类型(====)
			vo.setResleaseFlag(dto.getResleaseFlag());//释放标识(====)
			vo.setSyncRecord(dto.getSyncRecord());//语音是否同步（1：是，0：否）
			vo.setBusRem(dto.getBusRem());//备注
			vo.setIsValid(dto.getIsValid());//是否有效（1：是，0：否）
			vo.setIsDel(dto.getIsDel());//是否删除（1：是，0：否）

			vo.setCrtTm(dto.getCrtTm());//创建时间
			vo.setCrtUsrId(dto.getCrtUsrId());//创建人
			vo.setMdfTm(dto.getMdfTm());//修改时间
			vo.setMdfUsrId(dto.getMdfUsrId());//修改人
		}
		return vo;
	}

	/**
	 * VO 转 DTO
	 * @param dto NopCallBillInfoVO
	 * @return NopCallBillInfoDTO
	 */
	public static NopCallBillInfoDTO baseToDTO(NopCallBillInfoVO vo) {
		NopCallBillInfoDTO dto = null;
		if (vo != null) {
			dto = new NopCallBillInfoDTO();
			dto.setId(vo.getId());
			dto.setUuidCd(vo.getUuidCd());//唯一标识(UUID Hash值)
			dto.setCallId(vo.getCallId());//通话唯一标识
			dto.setAppId(vo.getAppId());//三方应用标识(appId)
			dto.setCallerNo(vo.getCallerNo());//主叫号码
			dto.setCalleeNo(vo.getCalleeNo());//被叫号码
			dto.setYNo(vo.getYNo());//中间号码Y
			dto.setXNo(vo.getXNo());
			dto.setStartTm(vo.getStartTm());//通话开始时间
			dto.setEndTm(vo.getEndTm());//通话结束时间
			dto.setCalleeRingTm(vo.getCalleeRingTm());//被叫振铃时间
			dto.setCalleeAnwserTm(vo.getCalleeAnwserTm());//被叫接听时间
			dto.setRecordRelPath(vo.getRecordRelPath());//录音地址相对路径
			dto.setRecordAbsPath(vo.getRecordAbsPath());//录音地址绝对路径
			dto.setRecordUrl(vo.getRecordUrl());//录音地址
			dto.setCallResult(vo.getCallResult());//本次通话结果
			dto.setCallDuration(vo.getCallDuration());//本次通话时长(秒)
			dto.setUserData(vo.getUserData());//用户自定义数据
			dto.setMappingId(vo.getMappingId());//绑定ID
			dto.setCalleeDisplay(vo.getCalleeDisplay());//被叫来显号码
			dto.setCallTyp(vo.getCallTyp());//呼叫类型(====)
			dto.setResleaseFlag(vo.getResleaseFlag());//释放标识(====)
			dto.setSyncRecord(vo.getSyncRecord());//语音是否同步（1：是，0：否）
			dto.setBusRem(vo.getBusRem());//备注
			dto.setIsValid(vo.getIsValid());//是否有效（1：是，0：否）
			dto.setIsDel(vo.getIsDel());//是否删除（1：是，0：否）

			dto.setCrtTm(vo.getCrtTm());//创建时间
			dto.setCrtUsrId(vo.getCrtUsrId());//创建人
			dto.setMdfTm(vo.getMdfTm());//修改时间
			dto.setMdfUsrId(vo.getMdfUsrId());//修改人
		}
		return dto;
	}
}
